package com.aaa.service;

import cn.hutool.db.Entity;

import java.util.List;
import java.util.Map;

/**
 * 用户管理接口
 * 提供用户添加、删除、更新、查询等操作。
 */
public interface UserService {

    /**
     * 添加用户。
     *
     * @param map 包含用户信息的Map对象，键值对表示用户属性及其值。
     * @return 添加成功返回true，失败返回false。
     */
    boolean addUser(Map map);

    /**
     * 删除用户。
     *
     * @param map 包含用于标识用户的信息的Map对象，如用户ID。
     * @return 删除成功返回true，失败返回false。
     */
    boolean deleteUser(Map map);

    /**
     * 更新用户信息。
     *
     * @param map 包含用户更新后的信息的Map对象，键值对表示用户属性及其新值。
     * @return 更新成功返回true，失败返回false。
     */
    boolean updateUser(Map map);

    /**
     * 查询所有用户。
     *
     * @return 返回包含所有用户信息的Entity列表。
     */
    List<Entity> findUser();

    /**
     * 根据ID查询用户。
     *
     * @param map 包含用于标识用户的信息的Map对象，主要应该是用户ID。
     * @return 返回匹配该ID的用户信息的Entity对象，如果找不到则返回null。
     */
    Entity findUserById(Map map);

    Entity findUserByName(String  user_name);

    public boolean updateUserLoginTime(Map map);

    Entity findUserByNameCheck(String user_name);

}
